<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        /*  冒泡排序法
            重复的比较两个数，如果顺序错误就将其改变过来 
            一共需要几趟我们用for外层循环
            每一次需要交换的次数我们用内层for循环 
        */
        /*   var num = [5, 4, 3, 2, 1];
          for (var i = 0; i < num.length; i++) {
              for (var j = i + 1; j < num.length; j++) {
                  if (num[i] > num[j]) {
                      var swap = num[i];
                      num[i] = num[j];
                      num[j] = swap;
                  }
              }
          }
          console.log(num);
          //通过函数来求任意两个数的和
          function plus(num1, num2) {
              var sum = num1 + num2;
              console.log(sum);
          }
          plus(1, 2);
          //通过函数来求任意两个数之间的和
          var sum = 0;

          function middleplus(num1, num2) {
              for (var i = num1; i <= num2; i++) {
                  sum += i;
              }
              console.log(sum);
          }
          middleplus(1, 5);
          //利用函数进行冒泡排序法
          function sort(arr) {
              for (var i = 0; i < arr.length; i++) {
                  for (var j = i + 1; j < arr.length; j++) {
                      if (arr[j] > arr[i]) {
                          var temp = arr[i];
                          arr[i] = arr[j];
                          arr[j] = temp;
                      }
                  }
              }
              return arr;
          }
          console.log(sort([1, 8, 12, 7, 89]));
          //随机点名
          function getRandom(min, max) {
              return Math.floor(Math.random() * (max - min + 1)) + min;
          }
          var arr1 = ['张三', '李四', '王五', '王大胆', '李二狗'];

          console.log(arr1[getRandom(0, arr1.length)]); */
        //date对象
        var date = new Date(); //date 要是需要用new来创建
        console.log(date); //没有写参数，则返回当前电脑的时间
        //写参数：参数的常见写法 数字型 2019，10,01 或者是字符串型 '2019-10-1 8:8：8'
        var date1 = new Date(2019, 4, 21); //数字型可以输出时间，但是月份会比实际大一个月
        console.log(date1);
        var date2 = new Date('2022-4-25 12:38:36'); //一般用这种方法来写时间
        console.log(date2);

        //日期的格式化，可以手动的添加时间日期
        var date3 = new Date();
        var year = date3.getFullYear(); //acquire year
        var month = date3.getMonth() + 1; //直接调用会比实际的小一个月，他表示的是0~11月，我们通常在后面加一个1
        var day = date3.getDay(); //acquire day，输出今天是周几，从0~6，周天表示为0，第一天是周日,返回的是数值
        var date4 = date3.getDate(); //获取的是今天是几号
        var arr = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];
        console.log('今天是：' + year + '年' + month + '月' + date + '日' + arr[day]);

        //用函数来封装一个获取时分秒的方法
        function gettimer() {
            var time = new Date();
            var h = time.getHours();
            //输出小于10时有0的效果
            h = h < 10 ? '0' + h : h;
            var m = time.getMinutes();
            m = m < 10 ? '0' + m : m;
            var s = time.getSeconds();
            s = s < 10 ? '0' + s : s;
            return h + ':' + m + ':' + s;
        }
        console.log(gettimer());
        //获取时间毫秒的方法 从现在开始到1970年的时间毫秒数
        var date5 = new Date();
        console.log(date5.valueOf());
        console.log(date5.getTime());

        var date6 = +new Date(); //也可以直接获取时间毫秒数
        console.log(date6);

        //h5新增的获取毫秒数
        console.log(Date.now());

        //倒计时案例
        /*  转换公式：
         d=parseInt(总秒数/60/60/24);//计算当前的天数
         h=parseInt(总秒数/60/60 %24);//计算当前小时
         m=parseInt(总秒数/60%60);//计算当前分数
         s=parseInt(总秒数%60);//当前当前秒数 */

        function countDown(time) {
            var nowtime = +new Date(); //当前时间的总毫秒数
            var inputtime = +new Date(time);
            var times = (inputtime - nowtime) / 1000; //总秒数
            var d = parseInt(times / 60 / 60 / 24);
            var h = parseInt(times / 60 / 60 % 24);
            var m = parseInt(times / 60 % 60);
            var s = parseInt(times % 60);
            return d + '天' + h + '时' + m + '分' + s + '秒';
        }
        console.log(countDown('2023-4-26 12:12:12'));


        //数组去重
        var arr1 = [1, 3, 4, 3, 4, 6, 89, 0]
        let s = new Set(arr1)
        let newarr = [...s]
        console.log('------');
        console.log(newarr);

        function unique(arr1) {
            var newArry = [];
            for (var i = 0; i < arr1.length; i++) {
                if (newArry.indexOf(arr1[i]) == -1) {
                    newArry.push(arr1[i]);
                }
            }
            return newArry;
        }
        console.log(unique(arr1));
    </script>
</head>

<body>

</body>

</html>
